/**
 */
package base.impl;

import base.Action;
import base.BasePackage;
import base.State;
import base.Transition;

import org.eclipse.emf.common.util.EList;

import org.eclipse.emf.ecore.EClass;

import org.eclipse.emf.internal.cdo.CDOObjectImpl;

/**
 * <!-- begin-user-doc -->
 * An implementation of the model object '<em><b>State</b></em>'.
 * <!-- end-user-doc -->
 * <p>
 * The following features are implemented:
 * <ul>
 *   <li>{@link base.impl.StateImpl#getNext <em>Next</em>}</li>
 *   <li>{@link base.impl.StateImpl#getActionAssocie <em>Action Associe</em>}</li>
 *   <li>{@link base.impl.StateImpl#getId <em>Id</em>}</li>
 *   <li>{@link base.impl.StateImpl#getNom <em>Nom</em>}</li>
 *   <li>{@link base.impl.StateImpl#isIsInitial <em>Is Initial</em>}</li>
 * </ul>
 * </p>
 *
 * @generated
 */
public class StateImpl extends CDOObjectImpl implements State {
	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected StateImpl() {
		super();
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	protected EClass eStaticClass() {
		return BasePackage.Literals.STATE;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	protected int eStaticFeatureCount() {
		return 0;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@SuppressWarnings("unchecked")
	public EList<Transition> getNext() {
		return (EList<Transition>)eGet(BasePackage.Literals.STATE__NEXT, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Action getActionAssocie() {
		return (Action)eGet(BasePackage.Literals.STATE__ACTION_ASSOCIE, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setActionAssocie(Action newActionAssocie) {
		eSet(BasePackage.Literals.STATE__ACTION_ASSOCIE, newActionAssocie);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public int getId() {
		return (Integer)eGet(BasePackage.Literals.STATE__ID, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setId(int newId) {
		eSet(BasePackage.Literals.STATE__ID, newId);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getNom() {
		return (String)eGet(BasePackage.Literals.STATE__NOM, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setNom(String newNom) {
		eSet(BasePackage.Literals.STATE__NOM, newNom);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public boolean isIsInitial() {
		return (Boolean)eGet(BasePackage.Literals.STATE__IS_INITIAL, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setIsInitial(boolean newIsInitial) {
		eSet(BasePackage.Literals.STATE__IS_INITIAL, newIsInitial);
	}

} //StateImpl
